home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / c / ww_tv.exe / GENINC.CPP < prev    next >
C/C++ Source or Header  |  1992-08-20  |  5KB  |  120 lines

  1. /*------------------------------------------------------------------------*/
  2. /* filename - geninc.cpp                                                  */
  3. /*                                                                        */
  4. /*      generates assembler EQUates for offsets of                        */
  5. /*      class data members                                                */
  6. /*                                                                        */
  7. /*  Used only before build!  Compile to produce GENINC.EXE,               */
  8. /*  then execute GENINC >TVWRITE.INC to produce the .INC                  */
  9. /*  file needed by the assembler files                                    */
  10. /*                                                                        */
  11. /*------------------------------------------------------------------------*/
  12.  
  13. /*------------------------------------------------------------------------*/
  14. /*                                                                        */
  15. /*    Turbo Vision -  Version 1.0                                         */
  16. /*                                                                        */
  17. /*                                                                        */
  18. /*    Copyright (c) 1991 by Borland International                         */
  19. /*    All Rights Reserved.                                                */
  20. /*                                                                        */
  21. /*------------------------------------------------------------------------*/
  22.  
  23. #define Uses_TPoint
  24. #define Uses_TView
  25. #define Uses_TGroup
  26. #define Uses_TEvent
  27. #define Uses_TFrame
  28. #define Uses_TDrawBuffer
  29. #define Uses_TEditor
  30. #define Uses_TTerminal
  31. #include <tv.h>
  32.  
  33. #if !defined( __IOSTREAM_H )
  34. #include <iostream.h>
  35. #endif    // __IOSTREAM_H
  36.  
  37. #if !defined( __IOMANIP_H )
  38. #include <iomanip.h>
  39. #endif    // __IOMANIP_H
  40.  
  41. #if !defined( __STDDEF_H )
  42. #include <stddef.h>
  43. #endif  // __STDDEF_H
  44.  
  45. #define genConst( n )  generate( #n, n )
  46.  
  47. #define gen( n, c, o ) generate( #n, offsetof( c, o ) )
  48.  
  49. void generate( const char *name, size_t offset )
  50. {
  51.     cout << setw( 19 ) << setiosflags( ios::left )
  52.          << name << " equ " << offset << endl;
  53. }
  54.  
  55. void genRefs()
  56. {
  57.     gen( TPointX,           TPoint, x );
  58.     gen( TPointY,           TPoint, y );
  59.  
  60.     gen( TViewSizeX,        TView,  size.x );
  61.     gen( TViewSizeY,        TView,  size.y );
  62.     gen( TViewState,        TView,  state );
  63.     gen( TViewOwner,        TView,  owner );
  64.     gen( TViewOriginY,      TView,  origin.y );
  65.     gen( TViewOriginX,      TView,  origin.x );
  66.     gen( TViewCursorY,      TView,  cursor.y );
  67.     gen( TViewCursorX,      TView,  cursor.x );
  68.     gen( TViewNext,         TView,  next );
  69.     gen( TViewOptions,      TView,  options );
  70.  
  71.     gen( TGroupClipAY,      TGroup, clip.a.y );
  72.     gen( TGroupClipAX,      TGroup, clip.a.x );
  73.     gen( TGroupClipBY,      TGroup, clip.b.y );
  74.     gen( TGroupClipBX,      TGroup, clip.b.x );
  75.     gen( TGroupLast,        TGroup, last );
  76.     gen( TGroupBuffer,      TGroup, buffer );
  77.     gen( TGroupLockFlag,    TGroup, lockFlag );
  78.  
  79.     gen( MsEventWhereX,     MouseEventType, where.x );
  80.     gen( MsEventWhereY,     MouseEventType, where.y );
  81.  
  82.     gen( TFrameSizeX,       TFrame, size.x );
  83.     gen( TFrameOwner,       TFrame, owner );
  84.  
  85.     gen( TDrawBufferData,   TDrawBuffer, data );
  86.     gen( TEditorCurPtr,     TEditor, curPtr );
  87.     gen( TEditorGapLen,     TEditor, gapLen );
  88.     gen( TEditorBuffer,     TEditor, buffer );
  89.     gen( TEditorSelStart,   TEditor, selStart );
  90.     gen( TEditorSelEnd,     TEditor, selEnd );
  91.     gen( TEditorBufSize,    TEditor, bufSize );
  92.     gen( TEditorBufLen,     TEditor, bufLen );
  93.     gen( TEditorDelCount,   TEditor, delCount );
  94.     gen( TEditorInsCount,   TEditor, insCount );
  95.     gen( TEditorTabSize,    TEditor, tabSize );
  96.     gen( TEditorWordWrap,   TEditor, wordWrap );
  97.     gen( TEditorRetChar,    TEditor, retChar );
  98.     gen( TEditorRMargin,    TEditor, rMargin );
  99.     gen( TTerminalBuffer,   TTerminal, buffer );
  100.     gen( TTerminalBufSize,  TTerminal, bufSize );
  101.     gen( TTerminalQueBack,  TTerminal, queBack );
  102.  
  103.     genConst( sfVisible );
  104.     genConst( sfCursorVis );
  105.     genConst( sfCursorIns );
  106.     genConst( sfFocused );
  107.     genConst( sfShadow );
  108.     genConst( sfExposed );
  109.     genConst( ofFramed );
  110.     genConst( wwsError );
  111.     genConst( wwsNoWrap );
  112.     genConst( wwsDidWrap );
  113. }
  114.  
  115. int main()
  116. {
  117.     genRefs();
  118.     return 0;
  119. }
  120.